#pragma once

#include <stdio.h>

#define NUM 1024
#define BUFF_NONE 0x1
#define BUFF_LINE 0x2
#define BUFF_ALL 0x4


typedef struct _MY_FILE
{
    int fd;//文件描述符
    char outputbuffer[NUM];//输出缓冲区
    int flags;//缓冲模式：行、全、不缓冲
    int current;//记录下次在缓冲区写入时的位置（下标）
} MY_FILE;

MY_FILE *my_fopen(const char* path, const char* mode);
size_t my_fwrite(const void* ptr, size_t size, size_t nemeb, MY_FILE* stream);
int my_fclose(MY_FILE* fp);
int my_fflush(MY_FILE* fp);